package 面向对象;

public class ArraysUtil {
    //求数组的最大值
    public int getMax(int[] arr){
        int maxValue=arr[0];
        for (int i = 1; i < arr.length; i++) {
            if (maxValue<arr[i]){
                maxValue=arr[i];
            }
        }
        return maxValue;
    }
    //求数组的最小值
    public int getMin(int[] arr){
        int minValue=arr[0];
        for (int i = 1; i <arr.length; i++) {
            if (minValue>arr[i]){
                minValue=arr[i];
            }
        }
        return minValue;
    }
    //求数组的总和
    public int getSum(int[] arr){
        int sum=0;
        for (int i = 0; i < arr.length; i++) {
            sum+=arr[i];
        }
        return sum;
    }
    //求数组的平均值
    public int getAvg(int[] arr){
        int sum=0;
        //for循环中的变量隶属于方法体中的变量，在方法体声明后不应该在for循环中在此声明
        //for循环中的i只识别for内的,在for循环中声明的变脸在方法内也访问不到
        for (int i = 0; i < arr.length; i++) {
            sum+=arr[i];
        }
        int avg=sum/arr.length;
        return avg;
    }
    //求平均值方法二：
    public int getAvg2(int[] arr){
        return getSum(arr)/arr.length;
    }
    //反转数组
  public void reverse(int[] arr){
      for (int i = 0; i < arr.length / 2; i++) {
          int temp = arr[i];
          arr[i]=arr[arr.length - i - 1];
          arr[arr.length - i - 1]=temp;
      }
  }
    //复制数组
    public int[] copy(int[] arr){
        int[] arr1 =new int[arr.length];
        for (int i = 0; i < arr.length; i++) {
            arr1[i]=arr[i];
        }
        return arr1;//数组需要返回null类型
    }
    //数组排序
    public void sort(int[] arr){
        //冒泡排序
        for (int i = 0; i < arr.length-1; i++) {
            for (int j = 0; j < arr.length-1; j++) {
                if (arr[j]>arr[j + 1]){
                    int temp=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=temp;
                }
            }
        }
    }
    //遍历数组
    public void print(int[] arr){
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+ "\t");
        }
    }
    //查找指定元素
    public int getIndex(int[] arr,int dest){
        for (int i = 0; i < arr.length; i++) {
            if (dest==arr[i]){
                System.out.println("找到了指定的元素，位置为"+ i);
                break;
            }
        }
        return dest;
    }
}
